package tests

import (
	"fmt"
	"github.com/spf13/viper"
	"os"
)

// 测试用例专用配置初始化（直接指定配置文件路径）
func InitTestConfig() {
	// 从项目根目录读取配置（固定相对路径）
	// 假设测试用例在 tests/kafka_tests，配置文件在项目根目录的 conf 下
	projectRoot := "../../" // 从测试目录到项目根目录的相对路径
	confPath := projectRoot + "conf"

	// 验证配置文件是否存在
	configFile := confPath + "/application.yml"
	if _, err := os.Stat(configFile); os.IsNotExist(err) {
		panic(fmt.Sprintf("配置文件不存在: %s，请检查路径是否正确", configFile))
	}

	// 加载配置
	viper.SetConfigName("application")
	viper.SetConfigType("yml")
	viper.AddConfigPath(confPath)

	if err := viper.ReadInConfig(); err != nil {
		panic(fmt.Sprintf("读取配置失败: %v，路径: %s", err, confPath))
	}
	fmt.Println("测试配置加载成功，路径:", confPath)
}
